home *** CD-ROM | disk | FTP | other *** search
- import com.siemens.mp.io.File;
-
- public class MailReader {
- public static int tooBigNo;
-
- public static int downloadNewMessages(ProgressForm var0) {
- int var1 = 0;
- tooBigNo = 0;
- Object var4 = null;
- String[] var5 = null;
- int[] var6 = null;
- int var8 = AccountHandler.getCount();
-
- for(int var9 = 0; var9 < var8; ++var9) {
- Globals.account = AccountHandler.getAccount(var9);
- String var3 = Globals.account.accountName + Globals.fileExtension;
- AccountHandler.openIDsFile(var3);
- String[] var14 = AccountHandler.readIDs();
- AccountHandler.closeIDsFile();
- String var2 = Globals.account.accountName + Globals.tmpFileExtension;
- if (Globals.account != null && Globals.account.accountActive) {
- var0.setInfo(-1, 0, Globals.account.popHost, (String)null, (String)null);
- boolean var10 = Globals.connectToServer(true);
- if (var10) {
- var0.setInfo(-1, -1, (String)null, MicroMail.r.getText(22), (String)null);
- int var11 = POP3Reader.getMessagesCount();
- var0.setInfo(-1, -1, (String)null, " 0/" + var11 + " " + MicroMail.r.getText(24), (String)null);
- System.gc();
- if (var11 > 0) {
- var0.setInfo(var11, -1, (String)null, (String)null, (String)null);
- var5 = POP3Reader.getMessageIDs(var11);
- var6 = POP3Reader.getMessageLengths(var11);
- }
-
- System.gc();
- AccountHandler.openIDsFile(var2);
-
- for(int var12 = 0; var12 < var11; ++var12) {
- var0.setInfo(-1, var12, (String)null, " " + var12 + "/" + var11 + " " + MicroMail.r.getText(24), (String)null);
- if (!messageDownloaded(var14, var5[var12])) {
- if (var6[var12] <= Globals.maxMsgSize) {
- Message var7 = POP3Reader.getMessageAtOnce(var12 + 1, var6[var12]);
- MicroCache.storeMessage(1, var7, -1);
- ++var1;
- Object var16 = null;
- } else {
- ++tooBigNo;
- }
- }
-
- AccountHandler.writeID(var5[var12], var12 + 1);
- if (MicroMail.getAppShutdown() || MicroMail.getEndConnection()) {
- MicroMail.printInfo(MicroMail.r.getText(23));
- break;
- }
-
- System.gc();
- }
-
- AccountHandler.closeIDsFile();
- StringBuffer var10004 = (new StringBuffer(" ")).append(var11).append("/").append(var11).append(" ");
- Resource var10006 = MicroMail.r;
- var0.setInfo(-1, var11, (String)null, var10004.append(MicroMail.r.getText(24)).toString(), (String)null);
- System.gc();
- Globals.disconnectFromServer(true);
- Globals.account = null;
- var5 = null;
- var6 = null;
- Object var15 = null;
-
- try {
- File var10000 = Globals.file;
- File.delete(var3);
- var10000 = Globals.file;
- File.rename(var2, var3);
- } catch (Exception var13) {
- }
-
- System.gc();
- var0.setInfo(-1, -1, (String)null, MicroMail.r.getText(21), (String)null);
- } else {
- Resource var10007 = MicroMail.r;
- var0.setInfo(-1, -1, (String)null, MicroMail.r.getText(20) + Globals.account.accountName, (String)null);
- MicroMail.printInfo(MicroMail.r.getText(20) + Globals.account.accountName);
- }
- } else {
- MicroMail.printInfo("ACCOUNT NOT ACTIVE:" + Globals.account.accountName);
- }
-
- if (MicroMail.getAppShutdown() || MicroMail.getEndConnection()) {
- MicroMail.printInfo(MicroMail.r.getText(23));
- break;
- }
- }
-
- System.gc();
- return var1;
- }
-
- protected static boolean messageDownloaded(String[] var0, String var1) {
- if (var0 != null) {
- int var2 = 0;
-
- for(int var3 = var0.length; var2 < var3; ++var2) {
- if (var0[var2].equals(var1)) {
- return true;
- }
- }
- }
-
- return false;
- }
- }
-